{

// // 定义响应状态的接口
// interface resoponse {
//     // 状态码
//     code: number,
//     // 响应的状态文本
//     msg: string,
//     // 响应类型:
//     contentType ?: string,
//     // 响应体的核心数据
//     data: data2
// }

// // data 的接口
// interface data1 {
//     id: number,
//     name: string,
//     age: number
// }

// interface data2 {
//     id: number,
//     name: string,
//     price: number,
//     count: number
// }

// const res1: resoponse = {
//     code: 200,
//     msg: '请求数据成功.',
//     contentType: 'asdad',
//     data: {
//         id: 23432432,
//         name: '迪丽热巴',
//         age: 29
//     }
// }

// const res2: resoponse = {
//     code: 200,
//     msg: '请求数据成功.',
//     // count: 20,
//     data: {
//         id: 23432432,
//         name: '《西游记》',
//         price: 31.5,
//         count: 300
//     }
// }

// 目前看起来都是没有问题的，但是这里对于某个类型其实还是宽泛了
// data 的 object 的类型还是很宽泛，所以需要更加严谨

// 定义响应状态的接口
interface resoponse<T> {
    // 状态码
    code: number,
    // 响应的状态文本
    msg: string,
    // 响应类型:
    contentType ?: string,
    // 响应体的核心数据
    data: T
}

// data 的接口
interface data1 {
    id: number,
    name: string,
    age: number
}

interface data2 {
    id: number,
    name: string,
    price: number,
    count: number
}

const res1: resoponse<data1> = {
    code: 200,
    msg: '请求数据成功.',
    contentType: 'asdad',
    data: {
        id: 23432432,
        name: '迪丽热巴',
        age: 29
    }
}

const res2: resoponse<data2> = {
    code: 200,
    msg: '请求数据成功.',
    data: {
        id: 23432432,
        name: '《西游记》',
        price: 31.5,
        count: 300
    }
}



}